Skip to content

Develop#25

Merged
qchapp merged 194 commits into
mainfrom
develop
Apr 29, 2026
Merged

Develop#25
qchapp merged 194 commits into
mainfrom
develop

Conversation

@qchapp
Copy link
Copy Markdown
Member

@qchapp qchapp commented Mar 14, 2026

This pull request introduces major improvements to the project’s infrastructure, configuration, and documentation, as well as a significant expansion of features and architectural changes. Key highlights include new CI workflows for deployment and Docker builds, a revamped .env.dist for environment configuration, a new Dockerfile for containerization, and a comprehensive update to the changelog detailing new chat-based features, tool registry systems, and UI enhancements.

Infrastructure and CI/CD:

  • Added GitHub Actions workflows for deploying to Hugging Face Spaces (deploy-develop-to-hf.yml), building documentation with MkDocs (deploy_docs.yml), and building Docker images for pull requests (docker-build-pr.yml). [1] [2] [3]
  • Introduced a new Dockerfile for containerized deployment, including a non-root user, dependency installation, and startup command for the chat agent.
  • Added .dockerignore to exclude unnecessary files from Docker builds, improving build efficiency and security.

Configuration and Environment:

  • Updated .env.dist with documentation and fields for API keys, model configuration, GraphDB, output paths, and support for a new config.yaml system. [1] [2]

Documentation and Project Structure:

  • Expanded CHANGELOG.md with detailed descriptions of new features, architectural changes, and bug fixes, including the new chat interface, tool registry, UI redesign, and improved retrieval pipeline. [1] [2]
  • Updated technical documentation in copilot-instructions.md to reflect new retriever modules and improved retrieval pipeline structure.

Summary of the most important changes:

Infrastructure & Deployment:

  • Added GitHub Actions workflows for Hugging Face Space deployment, documentation build, and Docker build for PRs. [1] [2] [3]
  • Introduced a new Dockerfile and .dockerignore for containerization and efficient Docker builds. [1] [2]

Configuration:

  • Expanded .env.dist with new fields for API keys, model configuration, GraphDB, and support for config.yaml, improving environment setup and flexibility. [1] [2]

Features & Architecture:

  • Comprehensive changelog update documenting new chat-based interface, tool registry, UI redesign, similarity-based query expansion, and multi-model support.
  • Updated technical documentation to reflect refactored retriever modules and improved retrieval pipeline.

Bug Fixes & Maintenance:

  • Fixed minor formatting and documentation issues in CHANGELOG.md.

These changes collectively modernize the project’s deployment, configuration, and documentation, while introducing a robust new feature set and architectural improvements.

qchapp and others added 30 commits October 22, 2025 17:42
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
added new repo info tool with test
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ocs, deleted useless code and added a few tests
@qchapp qchapp requested a review from Copilot March 16, 2026 11:34
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR modernizes the project into a chat-first “agent + RAG retrieval” architecture, adds containerization + CI workflows, introduces YAML-based model config, and expands documentation/testing around retrieval, repo info, and UI.

Changes:

  • Added CI workflows (HF Space deploy, MkDocs deploy, PR Docker build) plus root Dockerfile/.dockerignore.
  • Refactored retrieval/agent tooling (new embedder/reranker modules, pipeline singleton registry, query utils, DeepWiki/repocards repo summary).
  • Added extensive MkDocs documentation and several new tests/scripts around tools and retrieval behavior.

Reviewed changes

Copilot reviewed 92 out of 101 changed files in this pull request and generated 14 comments.

Show a summary per file
File Description
tests/test_repo_summary_async_contract.py Adds async contract coverage for repo summary tool.
tests/test_repo_summary.py Adds a repo summary “smoke test” script (currently under tests/).
tests/test_query_utils.py Adds unit tests for new query utils helpers.
tests/test_pipeline_registry.py Adds tests for pipeline singleton behavior by index_dir.
tests/test_gpt4o_vision.py Adds a vision test script (currently executes at import).
tests/test_epfl_vision.py Adds an EPFL vision capability test script (currently executes at import).
tests/README_test_deepwiki_repo_info.md Documents DeepWiki repo-info test suite.
tests/README_RETRIEVAL_TESTS.md Documents retrieval pipeline test suite and expectations.
src/ai_agent/utils/utils.py Refactors runnable link picking and adds affirmative + file coercion helpers.
src/ai_agent/utils/temp_file_manager.py Adds process-wide temp file registry + atexit cleanup.
src/ai_agent/utils/tags.py Simplifies supported control tags (EXCLUDE/REFINE only).
src/ai_agent/utils/image_io.py Formatting + safety guard improvements in image loading/unzipping.
src/ai_agent/utils/full_processing.py Renames entrypoint and adds logging output for catalog processing.
src/ai_agent/utils/file_validator.py Formatting + minor validation logic cleanup.
src/ai_agent/utils/config.py Adds YAML-driven model configuration loader.
src/ai_agent/utils/image_analyzer.py Removes legacy OpenAI VLM image analyzer module.
src/ai_agent/ui/visualizations.py Adds Plotly tool-call charts/timeline and disabled-tool summary.
src/ai_agent/ui/utils.py Adds UI helpers for reading model config (agent/default/available).
src/ai_agent/ui/state.py Adds chat state/message models and markdown rendering helpers.
src/ai_agent/ui/formatters.py Adds tool card markdown formatter.
src/ai_agent/ui/init.py Adds UI public exports + lazy imports.
src/ai_agent/retriever/text_embedder.py Adds BGE-M3 embedder wrapper interface.
src/ai_agent/retriever/reranker.py Adds CrossEncoder reranker wrapper.
src/ai_agent/queries/get_relevant_software.rq Adds SPARQL CONSTRUCT query template.
src/ai_agent/generator/schema.py Extends generator schema (Conversation/choices normalization).
src/ai_agent/generator/prompts.py Rewrites selector prompt and adds prompt factory functions.
src/ai_agent/generator/generator.py Removes legacy VLMToolSelector implementation.
src/ai_agent/core/pipeline_registry.py Adds shared pipeline singleton with index_dir-based recreation.
src/ai_agent/core/init.py Exposes core shared services.
src/ai_agent/cli.py Introduces chat/sync CLI + background catalog refresh loop.
src/ai_agent/agent/utils.py Expands AgentState + adds GitHub URL coercion helpers.
src/ai_agent/agent/tools/utils.py Adds lightweight catalog loader + shared pipeline access + clipping/github checks.
src/ai_agent/agent/tools/search_tool.py Updates search tool to use new query utils + automatic reranking + image hints.
src/ai_agent/agent/tools/search_alternative_tool.py Adds alternative query search tool.
src/ai_agent/agent/tools/rerank_tool.py Removes legacy rerank tool (reranking now automatic).
src/ai_agent/agent/tools/repo_info_tool.py Replaces repo_info with async deepwiki-first repo summary + repocards fallback.
src/ai_agent/agent/tools/query_utils.py Adds format normalization/token appending + legacy marker stripping.
src/ai_agent/agent/tools/mcp/registry.py Adds tool registry/config abstraction for MCP tools.
src/ai_agent/agent/tools/mcp/base.py Adds base input/output models for tool standardization.
src/ai_agent/agent/tools/mcp/init.py Exposes MCP registry/base models + registration trigger.
src/ai_agent/agent/tools/gradio_space_tool.py Reworks demo runner, adds preview/origin materialization.
src/ai_agent/agent/tools/deepwiki_tool.py Adds DeepWiki MCP integration for repo docs.
src/ai_agent/agent/tools/init.py Exposes tool registration API and imports tool set for registration.
src/ai_agent/agent/models.py Adds usage stats + richer tool-run logging for agent results.
scripts/process_fields.py Removes legacy dataset field filtering script.
pyproject.toml Pins dependencies and adds new runtime deps (plotly, repocards, yaml, RDF).
mkdocs.yml Adds MkDocs Material site configuration and navigation.
docs/index.md Adds docs landing page.
docs/getting-started/installation.md Adds installation guide (includes Docker instructions).
docs/getting-started/configuration.md Adds env/config.yaml setup guide.
docs/getting-started/quickstart.md Adds quickstart walkthrough.
docs/user-guide/chat-interface.md Adds chat UI usage guide and advanced tags.
docs/user-guide/file-formats.md Adds supported formats and preview/metadata explanation.
docs/user-guide/recommendations.md Explains ranking/scoring pipeline and interpretation.
docs/user-guide/running-demos.md Documents demo execution workflow.
docs/reference/environment.md Documents environment variables and model config.
docs/reference/cli.md Documents CLI commands.
docs/reference/changelog.md Adds docs-friendly changelog page.
docs/development/contributing.md Adds contribution guide.
config.yaml Adds default model configuration and UI model list.
LICENSE Adds Apache-2.0 license file.
Dockerfile Adds root Dockerfile for containerized deployment.
.dockerignore Excludes git/env/tests from Docker build context.
.env.dist Expands environment template with new variables and guidance.
.github/workflows/docker-build-pr.yml Adds PR Docker build workflow.
.github/workflows/deploy_docs.yml Adds GitHub Pages deploy via MkDocs workflow.
.github/workflows/deploy-develop-to-hf.yml Adds Hugging Face Spaces deploy workflow.
.github/copilot-instructions.md Updates internal architecture guidance and command names.

You can also share your feedback on Copilot code review. Take the survey.

Comment thread src/ai_agent/utils/utils.py
Comment thread tests/test_gpt4o_vision.py Outdated
Comment thread tests/test_epfl_vision.py Outdated
Comment thread tests/test_repo_summary.py
Comment thread src/ai_agent/agent/tools/repo_info_tool.py
Comment thread src/ai_agent/agent/tools/gradio_space_tool.py
Comment thread src/ai_agent/generator/prompts.py Outdated
Comment thread src/ai_agent/generator/prompts.py Outdated
Comment thread src/ai_agent/utils/temp_file_manager.py Outdated
Comment thread src/ai_agent/utils/temp_file_manager.py Outdated
qchapp and others added 5 commits March 16, 2026 12:51
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@qchapp qchapp requested a review from caviri March 16, 2026 15:00
@qchapp qchapp merged commit fa8c18c into main Apr 29, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants